import Mutils from '@/utils/index.jsx'
const _mm = new Mutils()

class Product {
    //  获取商品列表
	getProductList(listParam){
		return _mm.request({
			type:'post',
			url:`/manage/product/${listParam.listType}.do`,
			data:{
				...listParam,
				[listParam.searchType] : listParam.listType === 'search' ? listParam.keyWord : null
			}
		})
	}
	// 获取编辑商品详情
	getProduct(pid){
		return _mm.request({
			type:'post',
			url:'/manage/product/detail.do',
			data:{
				productId:pid
			}
		})
	}
	// 变更商品销售状态
	setProductStatus(productInfo) {
		return _mm.request({
			type:'post',
			url:'/manage/product/set_sale_status.do',
			data:productInfo
		})
	}

	// 品类相关
	getCategoryList(parentCategoryId){
		return _mm.request({
			type:'post',
			url:'/manage/category/get_category.do',
			data:{
				categoryId:parentCategoryId || 0
 			}
		})
	}
	// check product
	checkProduct(product){
		let result = {
			status:true,
			msg:'验证通过'
		};
		if(typeof product.name !== 'string' || product.name.length === 0){
			return {
				...result,
				status:false,
				msg:'商品名称不能为空！'
			}
		}
		if(typeof product.subtitle !== 'string' || product.subtitle.length === 0){
			return {
				...result,
				status:false,
				msg:'商品描述不能为空！'
			}
		}
		if(typeof product.price !== 'number' || product.price < 0){
			return {
				...result,
				status:false,
				msg:'商品价格不能为空！'
			}
		}
		if(typeof product.stock !== 'number' || product.stock < 0){
			return {
				...result,
				status:false,
				msg:'商品库存不能为空！'
			}
		}
		if(product.categoryId <= 0){
			return {
				...result,
				status:false,
				msg:'商品分类不能为空！'
			}
		}
		return result;
	}
	saveProduct(product) {
		return _mm.request({
			type:'post',
			url:'/manage/product/save.do',
			data:product
		})
	}
}

export default Product